
from typing import Any, List
from pydantic import BaseModel

class AfferentBase():
    id: str
    remarks: str
    startTime: str
    endTime: str
    pageNo: int
    pageSize: int

class UserInfo(BaseModel):
    username: str
    password: str

class AfferentCaseGroup(BaseModel, AfferentBase):
    title: str
    system_name: str
    modular_name: str

class AfferentCase(BaseModel, AfferentBase):
    case_group_id: str
    title: str
    enable: str
    user_var: str
    before_handle: str
    method: str
    database_info: str
    driver_info: str
    header: str
    url_or_sql: str
    element_info: str
    param_type: str
    params: str
    file_info: str
    extract_var: str
    var_name: str
    need_data: str
    random_info: str
    forced_type: str
    after_handle: str
    assert_info: str
    expected_results: str
    actual_result_template: str
    actual_results: str
    whether: str

class PutMenuInfo(BaseModel):
    id: str
    parentId: Any
    type: int
    name: str
    path: str
    thisRoleMenu: bool
    menuList: List[Any]
    show: bool
    icon: str
    component: str
    createdAt: str
    updatedAt: str

class RoleInfo(BaseModel):
    name: str
    remarks: str
    menuList: List[PutMenuInfo]

class AfferenScheduledTask(BaseModel, AfferentBase):
    title: str
    enable: int
    execution_info: str
    group_info: str











































